package com.neuedu.my12306.web;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class LogoutServlet
 */
@WebServlet("/LogoutServlet.do")
public class LogoutServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
    public LogoutServlet() {
        super();

    }


	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//LogoutServlet的作用是使用HttpSession会话失效，或把HttpSession绑定的内容解绑
		HttpSession session = request.getSession();
		//当参数为true时，功能与空参方法相同：即获取当前请求所在的session
		//session = request.getSession(true);
		//当参数为false时，会返回当前请求所在的session，如果session不存在（或session无效），则会返回null；
		//session = request.getSession(false);
		
		
		//删除属性绑定
		session.removeAttribute("LOGIN_USER");
		//session创建后，如果没有新的操作到达服务器，则session过一段时间后会自动失效（默认30分钟）
		//设置会话自动失效时间，单位为秒
		//session.setMaxInactiveInterval(0);
		//使session立即失效，且删除有绑定的数据
		//session.invalidate();
		
		Cookie cookie = new Cookie("userName", null);
		cookie.setPath(request.getContextPath());
		//在服务端删除cookie  ：添加一个与登录相同的cookie，设置其生命周期为0  即删除cookie
		cookie.setMaxAge(0);
		//把cookie响应回客户端，浏览器客户端会收到会保存到cookie
		response.addCookie(cookie);
		
		response.sendRedirect(request.getContextPath()+"/Login.jsp");
		
	
	
	}

}
